{
 "cells": [
  {
   "cell_type": "code",
   "execution_count": 1,
   "id": "cb321870",
   "metadata": {
    "execution": {
     "iopub.execute_input": "2023-05-26T02:46:12.432429Z",
     "iopub.status.busy": "2023-05-26T02:46:12.426147Z",
     "iopub.status.idle": "2023-05-26T02:46:18.785985Z",
     "shell.execute_reply": "2023-05-26T02:46:18.784976Z"
    },
    "executionInfo": {
     "elapsed": 2844,
     "status": "ok",
     "timestamp": 1684409199330,
     "user": {
      "displayName": "RUIYING CHEN",
      "userId": "09384040230747805046"
     },
     "user_tz": -480
    },
    "id": "wHsFZo6akD8M",
    "outputId": "d017ea14-1ff6-429f-d7da-2f6ad9e82ec1",
    "papermill": {
     "duration": 6.376394,
     "end_time": "2023-05-26T02:46:18.788804",
     "exception": false,
     "start_time": "2023-05-26T02:46:12.412410",
     "status": "completed"
    },
    "tags": []
   },
   "outputs": [],
   "source": [
    "import torch\n",
    "import torchvision\n",
    "import torchvision.transforms as transforms\n",
    "\n",
    "transform = transforms.Compose([transforms.ToTensor(), transforms.Normalize((0.5, 0.5, 0.5), (0.5, 0.5, 0.5))])\n",
    "batch_size = 8\n",
    "\n",
    "device=\"cuda\"\n",
    "\n",
    "#uncomment when using colab or local cpu\n",
    "# train_dataset = torchvision.datasets.cifar.CIFAR100(root='cifar100', train=True, transform=transform, download=True)\n",
    "# test_dataset = torchvision.datasets.cifar.CIFAR100(root='cifar100', train=False, transform=transform, download=True)\n",
    "# train_loader = torch.utils.data.DataLoader(train_dataset, batch_size=batch_size, shuffle=True, num_workers=2)\n",
    "# test_loader = torch.utils.data.DataLoader(test_dataset, batch_size=batch_size, shuffle=False, num_workers=2)\n",
    "\n",
    "#uncomment when using kaggle\n",
    "\n",
    "train_dataset = torchvision.datasets.ImageFolder(\"/kaggle/input/cifar100/CIFAR100/TRAIN\", transform=transform)\n",
    "\n",
    "test_dataset = torchvision.datasets.ImageFolder(\"/kaggle/input/cifar100/CIFAR100/TEST\", transform=transform)\n",
    "\n",
    "train_loader = torch.utils.data.DataLoader(train_dataset, batch_size=batch_size, shuffle=True, num_workers=2)\n",
    "\n",
    "test_loader = torch.utils.data.DataLoader(test_dataset, batch_size=batch_size, shuffle=False, num_workers=2)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "id": "a4b0337c",
   "metadata": {
    "execution": {
     "iopub.execute_input": "2023-05-26T02:46:18.802998Z",
     "iopub.status.busy": "2023-05-26T02:46:18.801931Z",
     "iopub.status.idle": "2023-05-26T02:46:19.260434Z",
     "shell.execute_reply": "2023-05-26T02:46:19.259289Z"
    },
    "executionInfo": {
     "elapsed": 8,
     "status": "ok",
     "timestamp": 1684409199330,
     "user": {
      "displayName": "RUIYING CHEN",
      "userId": "09384040230747805046"
     },
     "user_tz": -480
    },
    "id": "VjkCK8NykPMb",
    "outputId": "d8b6db1d-275c-4979-f5c6-411c763dea3f",
    "papermill": {
     "duration": 0.468389,
     "end_time": "2023-05-26T02:46:19.263423",
     "exception": false,
     "start_time": "2023-05-26T02:46:18.795034",
     "status": "completed"
    },
    "tags": []
   },
   "outputs": [
    {
     "data": {
      "image/png": "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",
      "text/plain": [
       "<Figure size 640x480 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "torch.Size([8])\n"
     ]
    }
   ],
   "source": [
    "import matplotlib.pyplot as plt\n",
    "import numpy as np\n",
    "\n",
    "# functions to show an image\n",
    "\n",
    "\n",
    "def imshow(img):\n",
    "    img = img / 2 + 0.5     # unnormalize\n",
    "    npimg = img.numpy()\n",
    "    plt.imshow(np.transpose(npimg, (1, 2, 0)))\n",
    "    plt.show()\n",
    "\n",
    "\n",
    "# get some random training images\n",
    "dataiter = iter(train_loader)\n",
    "# images, labels = dataiter.next()\n",
    "images, labels = next(dataiter)\n",
    "\n",
    "# show images\n",
    "imshow(torchvision.utils.make_grid(images))\n",
    "# print labels\n",
    "print(labels.shape)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "id": "f1d8402b",
   "metadata": {
    "execution": {
     "iopub.execute_input": "2023-05-26T02:46:19.280136Z",
     "iopub.status.busy": "2023-05-26T02:46:19.279823Z",
     "iopub.status.idle": "2023-05-26T02:46:19.313568Z",
     "shell.execute_reply": "2023-05-26T02:46:19.312738Z"
    },
    "executionInfo": {
     "elapsed": 7,
     "status": "ok",
     "timestamp": 1684409199331,
     "user": {
      "displayName": "RUIYING CHEN",
      "userId": "09384040230747805046"
     },
     "user_tz": -480
    },
    "id": "1mY2iwmCkcpA",
    "papermill": {
     "duration": 0.044949,
     "end_time": "2023-05-26T02:46:19.315670",
     "exception": false,
     "start_time": "2023-05-26T02:46:19.270721",
     "status": "completed"
    },
    "tags": []
   },
   "outputs": [],
   "source": [
    "import math\n",
    "\n",
    "import torch\n",
    "import torch.nn as nn\n",
    "import torch.nn.functional as F\n",
    "from torch.nn import init\n",
    "\n",
    "def conv3x3(in_planes, out_planes, stride=1):\n",
    "    \"3x3 convolution with padding\"\n",
    "    return nn.Conv2d(\n",
    "        in_planes, out_planes, kernel_size=3, stride=stride, padding=1, bias=False\n",
    "    )\n",
    "\n",
    "\n",
    "class BasicBlock(nn.Module):\n",
    "    expansion = 1\n",
    "\n",
    "    def __init__(\n",
    "        self, inplanes, planes, stride=1, downsample=None, use_triplet_attention=False\n",
    "    ):\n",
    "        super(BasicBlock, self).__init__()\n",
    "        self.conv1 = conv3x3(inplanes, planes, stride)\n",
    "        self.bn1 = nn.BatchNorm2d(planes)\n",
    "        self.relu = nn.ReLU(inplace=True)\n",
    "        self.conv2 = conv3x3(planes, planes)\n",
    "        self.bn2 = nn.BatchNorm2d(planes)\n",
    "        self.downsample = downsample\n",
    "        self.stride = stride\n",
    "\n",
    "        if use_triplet_attention:\n",
    "            self.triplet_attention = TripletAttention(planes, 16)\n",
    "        else:\n",
    "            self.triplet_attention = None\n",
    "\n",
    "    def forward(self, x):\n",
    "        residual = x\n",
    "\n",
    "        out = self.conv1(x)\n",
    "        out = self.bn1(out)\n",
    "        out = self.relu(out)\n",
    "\n",
    "        out = self.conv2(out)\n",
    "        out = self.bn2(out)\n",
    "\n",
    "        if self.downsample is not None:\n",
    "            residual = self.downsample(x)\n",
    "\n",
    "        if not self.triplet_attention is None:\n",
    "            out = self.triplet_attention(out)\n",
    "\n",
    "        out += residual\n",
    "        out = self.relu(out)\n",
    "\n",
    "        return out\n",
    "\n",
    "\n",
    "class Bottleneck(nn.Module):\n",
    "    expansion = 4\n",
    "\n",
    "    def __init__(\n",
    "        self, inplanes, planes, stride=1, downsample=None, use_triplet_attention=False\n",
    "    ):\n",
    "        super(Bottleneck, self).__init__()\n",
    "        self.conv1 = nn.Conv2d(inplanes, planes, kernel_size=1, bias=False)\n",
    "        self.bn1 = nn.BatchNorm2d(planes)\n",
    "        self.conv2 = nn.Conv2d(\n",
    "            planes, planes, kernel_size=3, stride=stride, padding=1, bias=False\n",
    "        )\n",
    "        self.bn2 = nn.BatchNorm2d(planes)\n",
    "        self.conv3 = nn.Conv2d(planes, planes * 4, kernel_size=1, bias=False)\n",
    "        self.bn3 = nn.BatchNorm2d(planes * 4)\n",
    "        self.relu = nn.ReLU(inplace=True)\n",
    "        self.downsample = downsample\n",
    "        self.stride = stride\n",
    "\n",
    "        if use_triplet_attention:\n",
    "            self.triplet_attention = TripletAttention(planes * 4, 16)\n",
    "        else:\n",
    "            self.triplet_attention = None\n",
    "\n",
    "    def forward(self, x):\n",
    "        residual = x\n",
    "\n",
    "        out = self.conv1(x)\n",
    "        out = self.bn1(out)\n",
    "        out = self.relu(out)\n",
    "\n",
    "        out = self.conv2(out)\n",
    "        out = self.bn2(out)\n",
    "        out = self.relu(out)\n",
    "\n",
    "        out = self.conv3(out)\n",
    "        out = self.bn3(out)\n",
    "\n",
    "        if self.downsample is not None:\n",
    "            residual = self.downsample(x)\n",
    "\n",
    "        if not self.triplet_attention is None:\n",
    "            out = self.triplet_attention(out)\n",
    "\n",
    "        out += residual\n",
    "        out = self.relu(out)\n",
    "\n",
    "        return out\n",
    "\n",
    "\n",
    "class ResNet(nn.Module):\n",
    "    def __init__(self, block, layers, network_type, num_classes, att_type=None):\n",
    "        self.inplanes = 64\n",
    "        super(ResNet, self).__init__()\n",
    "        self.network_type = network_type\n",
    "        # different model config between ImageNet and CIFAR\n",
    "        if network_type == \"ImageNet\":\n",
    "            self.conv1 = nn.Conv2d(\n",
    "                3, 64, kernel_size=7, stride=2, padding=3, bias=False\n",
    "            )\n",
    "            self.maxpool = nn.MaxPool2d(kernel_size=3, stride=2, padding=1)\n",
    "            self.avgpool = nn.AvgPool2d(7)\n",
    "        else:\n",
    "            self.conv1 = nn.Conv2d(\n",
    "                3, 64, kernel_size=3, stride=1, padding=1, bias=False\n",
    "            )\n",
    "\n",
    "        self.bn1 = nn.BatchNorm2d(64)\n",
    "        self.relu = nn.ReLU(inplace=True)\n",
    "\n",
    "        self.layer1 = self._make_layer(block, 64, layers[0], att_type=att_type)\n",
    "        self.layer2 = self._make_layer(\n",
    "            block, 128, layers[1], stride=2, att_type=att_type\n",
    "        )\n",
    "        self.layer3 = self._make_layer(\n",
    "            block, 256, layers[2], stride=2, att_type=att_type\n",
    "        )\n",
    "        self.layer4 = self._make_layer(\n",
    "            block, 512, layers[3], stride=2, att_type=att_type\n",
    "        )\n",
    "\n",
    "        self.fc = nn.Linear(512 * block.expansion, num_classes)\n",
    "\n",
    "        init.kaiming_normal_(self.fc.weight)\n",
    "        for key in self.state_dict():\n",
    "            if key.split(\".\")[-1] == \"weight\":\n",
    "                if \"conv\" in key:\n",
    "                    init.kaiming_normal_(self.state_dict()[key], mode=\"fan_out\")\n",
    "                if \"bn\" in key:\n",
    "                    if \"SpatialGate\" in key:\n",
    "                        self.state_dict()[key][...] = 0\n",
    "                    else:\n",
    "                        self.state_dict()[key][...] = 1\n",
    "            elif key.split(\".\")[-1] == \"bias\":\n",
    "                self.state_dict()[key][...] = 0\n",
    "\n",
    "    def _make_layer(self, block, planes, blocks, stride=1, att_type=None):\n",
    "        downsample = None\n",
    "        if stride != 1 or self.inplanes != planes * block.expansion:\n",
    "            downsample = nn.Sequential(\n",
    "                nn.Conv2d(\n",
    "                    self.inplanes,\n",
    "                    planes * block.expansion,\n",
    "                    kernel_size=1,\n",
    "                    stride=stride,\n",
    "                    bias=False,\n",
    "                ),\n",
    "                nn.BatchNorm2d(planes * block.expansion),\n",
    "            )\n",
    "\n",
    "        layers = []\n",
    "        layers.append(\n",
    "            block(\n",
    "                self.inplanes,\n",
    "                planes,\n",
    "                stride,\n",
    "                downsample,\n",
    "                use_triplet_attention=att_type == \"TripletAttention\",\n",
    "            )\n",
    "        )\n",
    "        self.inplanes = planes * block.expansion\n",
    "        for i in range(1, blocks):\n",
    "            layers.append(\n",
    "                block(\n",
    "                    self.inplanes,\n",
    "                    planes,\n",
    "                    use_triplet_attention=att_type == \"TripletAttention\",\n",
    "                )\n",
    "            )\n",
    "\n",
    "        return nn.Sequential(*layers)\n",
    "\n",
    "    def forward(self, x):\n",
    "        x = self.conv1(x)\n",
    "        x = self.bn1(x)\n",
    "        x = self.relu(x)\n",
    "        if self.network_type == \"ImageNet\":\n",
    "            x = self.maxpool(x)\n",
    "\n",
    "        x = self.layer1(x)\n",
    "        x = self.layer2(x)\n",
    "        x = self.layer3(x)\n",
    "        x = self.layer4(x)\n",
    "\n",
    "        if self.network_type == \"ImageNet\":\n",
    "            x = self.avgpool(x)\n",
    "        else:\n",
    "            x = F.avg_pool2d(x, 4)\n",
    "        x = x.view(x.size(0), -1)\n",
    "        x = self.fc(x)\n",
    "        return x\n",
    "\n"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "7c0684e7",
   "metadata": {
    "papermill": {
     "duration": 0.00676,
     "end_time": "2023-05-26T02:46:19.329226",
     "exception": false,
     "start_time": "2023-05-26T02:46:19.322466",
     "status": "completed"
    },
    "tags": []
   },
   "source": [
    "## 通道注意力机制"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "id": "0c375ed8",
   "metadata": {
    "execution": {
     "iopub.execute_input": "2023-05-26T02:46:19.344515Z",
     "iopub.status.busy": "2023-05-26T02:46:19.344252Z",
     "iopub.status.idle": "2023-05-26T02:46:19.352266Z",
     "shell.execute_reply": "2023-05-26T02:46:19.351204Z"
    },
    "papermill": {
     "duration": 0.018061,
     "end_time": "2023-05-26T02:46:19.354297",
     "exception": false,
     "start_time": "2023-05-26T02:46:19.336236",
     "status": "completed"
    },
    "tags": []
   },
   "outputs": [],
   "source": [
    "class ChannelAttention(nn.Module):\n",
    "    def __init__(self, in_channels, reduction_ratio=16):\n",
    "        super(ChannelAttention, self).__init__()\n",
    "        \n",
    "        self.avg_pool = nn.AdaptiveAvgPool2d(1)\n",
    "        self.fc = nn.Sequential(\n",
    "            nn.Linear(in_channels, in_channels // reduction_ratio),\n",
    "            nn.ReLU(inplace=True),\n",
    "            nn.Linear(in_channels // reduction_ratio, in_channels),\n",
    "            nn.Sigmoid()\n",
    "        )\n",
    "        \n",
    "    def forward(self, x):\n",
    "        # 输入x的尺寸：[batch_size, in_channels, height, width]\n",
    "        \n",
    "        # 全局平均池化，输出尺寸：[batch_size, in_channels, 1, 1]\n",
    "        feat = self.avg_pool(x)\n",
    "        \n",
    "        # 压缩通道维度，输出尺寸：[batch_size, in_channels // reduction_ratio, 1, 1]\n",
    "        feat = feat.view(feat.size(0), -1)\n",
    "        \n",
    "        # 全连接层，输出尺寸：[batch_size, in_channels]\n",
    "        feat = self.fc(feat)\n",
    "        \n",
    "        # 将通道权重应用到输入特征图上，输出尺寸：[batch_size, in_channels, height, width]\n",
    "        feat = torch.unsqueeze(feat, 2)\n",
    "        feat = torch.unsqueeze(feat, 3)\n",
    "        feat = x * feat\n",
    "        \n",
    "        return feat"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "024fd4f5",
   "metadata": {
    "papermill": {
     "duration": 0.006583,
     "end_time": "2023-05-26T02:46:19.368172",
     "exception": false,
     "start_time": "2023-05-26T02:46:19.361589",
     "status": "completed"
    },
    "tags": []
   },
   "source": [
    "## 多尺度 attention trial"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "id": "c396853e",
   "metadata": {
    "execution": {
     "iopub.execute_input": "2023-05-26T02:46:19.383768Z",
     "iopub.status.busy": "2023-05-26T02:46:19.382897Z",
     "iopub.status.idle": "2023-05-26T02:46:19.392476Z",
     "shell.execute_reply": "2023-05-26T02:46:19.391659Z"
    },
    "papermill": {
     "duration": 0.019351,
     "end_time": "2023-05-26T02:46:19.394472",
     "exception": false,
     "start_time": "2023-05-26T02:46:19.375121",
     "status": "completed"
    },
    "tags": []
   },
   "outputs": [],
   "source": [
    "import torch\n",
    "import torch.nn as nn\n",
    "\n",
    "class MultiScaleAttention(nn.Module):\n",
    "    def __init__(self, in_channels, scales=[1, 2, 3]):\n",
    "        super(MultiScaleAttention, self).__init__()\n",
    "        self.scales = scales\n",
    "        \n",
    "        self.attention_layers = nn.ModuleList()\n",
    "        for scale in scales:\n",
    "            self.attention_layers.append(\n",
    "                nn.Sequential(\n",
    "                    nn.Conv2d(in_channels, in_channels, kernel_size=3, padding=1, stride=scale),\n",
    "                    nn.BatchNorm2d(in_channels),\n",
    "                    nn.ReLU(inplace=True),\n",
    "                    nn.Conv2d(in_channels, in_channels, kernel_size=3, padding=1, stride=1),\n",
    "                    nn.BatchNorm2d(in_channels),\n",
    "                    nn.Sigmoid()\n",
    "                )\n",
    "            )\n",
    "\n",
    "    def forward(self, x):\n",
    "        attention_maps = []\n",
    "        for i, attention_layer in enumerate(self.attention_layers):\n",
    "            attention_map = attention_layer(x)\n",
    "            attention_map = nn.functional.interpolate(attention_map, size=x.size()[2:], mode='bilinear', align_corners=False)\n",
    "            attention_maps.append(attention_map)\n",
    "\n",
    "        out = torch.mean(torch.stack(attention_maps), dim=0)\n",
    "        out = out * x\n",
    "\n",
    "        return out\n"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "8e77a842",
   "metadata": {
    "papermill": {
     "duration": 0.006561,
     "end_time": "2023-05-26T02:46:19.407885",
     "exception": false,
     "start_time": "2023-05-26T02:46:19.401324",
     "status": "completed"
    },
    "tags": []
   },
   "source": [
    "## 定义SKNet"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "id": "06518f8c",
   "metadata": {
    "execution": {
     "iopub.execute_input": "2023-05-26T02:46:19.422730Z",
     "iopub.status.busy": "2023-05-26T02:46:19.422481Z",
     "iopub.status.idle": "2023-05-26T02:46:19.454036Z",
     "shell.execute_reply": "2023-05-26T02:46:19.453204Z"
    },
    "papermill": {
     "duration": 0.041463,
     "end_time": "2023-05-26T02:46:19.456014",
     "exception": false,
     "start_time": "2023-05-26T02:46:19.414551",
     "status": "completed"
    },
    "tags": []
   },
   "outputs": [],
   "source": [
    "\n",
    "#sknet\n",
    "class SKConv(nn.Module):\n",
    "    def __init__(self, features, M=2, G=32, r=16, stride=1 ,L=32):\n",
    "        \"\"\" Constructor\n",
    "        Args:\n",
    "            features: input channel dimensionality.\n",
    "            M: the number of branchs.\n",
    "            G: num of convolution groups.\n",
    "            r: the ratio for compute d, the length of z.\n",
    "            stride: stride, default 1.\n",
    "            L: the minimum dim of the vector z in paper, default 32.\n",
    "        \"\"\"\n",
    "        super(SKConv, self).__init__()\n",
    "        d = max(int(features/r), L)\n",
    "        self.M = M\n",
    "        self.features = features\n",
    "        self.convs = nn.ModuleList([])\n",
    "        for i in range(M):\n",
    "            self.convs.append(nn.Sequential(\n",
    "                nn.Conv2d(features, features, kernel_size=3, stride=stride, padding=1+i, dilation=1+i, groups=G, bias=False),\n",
    "                nn.BatchNorm2d(features),\n",
    "                nn.ReLU(inplace=True)\n",
    "            ))\n",
    "        self.gap = nn.AdaptiveAvgPool2d((1,1))\n",
    "        self.fc = nn.Sequential(nn.Conv2d(features, d, kernel_size=1, stride=1, bias=False),\n",
    "                                nn.BatchNorm2d(d),\n",
    "                                nn.ReLU(inplace=True))\n",
    "        self.fcs = nn.ModuleList([])\n",
    "        for i in range(M):\n",
    "            self.fcs.append(\n",
    "                 nn.Conv2d(d, features, kernel_size=1, stride=1)\n",
    "            )\n",
    "        self.softmax = nn.Softmax(dim=1)\n",
    "        \n",
    "    def forward(self, x):\n",
    "        \n",
    "        batch_size = x.shape[0]\n",
    "        \n",
    "        feats = [conv(x) for conv in self.convs]      \n",
    "        feats = torch.cat(feats, dim=1)\n",
    "        feats = feats.view(batch_size, self.M, self.features, feats.shape[2], feats.shape[3])\n",
    "        \n",
    "        feats_U = torch.sum(feats, dim=1)\n",
    "        feats_S = self.gap(feats_U)\n",
    "        feats_Z = self.fc(feats_S)\n",
    "\n",
    "        attention_vectors = [fc(feats_Z) for fc in self.fcs]\n",
    "        attention_vectors = torch.cat(attention_vectors, dim=1)\n",
    "        attention_vectors = attention_vectors.view(batch_size, self.M, self.features, 1, 1)\n",
    "        attention_vectors = self.softmax(attention_vectors)\n",
    "        \n",
    "        feats_V = torch.sum(feats*attention_vectors, dim=1)\n",
    "        \n",
    "        return feats_V\n",
    "\n",
    "\n",
    "class SKUnit(nn.Module):\n",
    "    def __init__(self, in_features, mid_features, out_features, M=2, G=32, r=16, stride=1, L=32):\n",
    "        \"\"\" Constructor\n",
    "        Args:\n",
    "            in_features: input channel dimensionality.\n",
    "            out_features: output channel dimensionality.\n",
    "            M: the number of branchs.\n",
    "            G: num of convolution groups.\n",
    "            r: the ratio for compute d, the length of z.\n",
    "            mid_features: the channle dim of the middle conv with stride not 1, default out_features/2.\n",
    "            stride: stride.\n",
    "            L: the minimum dim of the vector z in paper.\n",
    "        \"\"\"\n",
    "        super(SKUnit, self).__init__()\n",
    "        \n",
    "        self.conv1 = nn.Sequential(\n",
    "            nn.Conv2d(in_features, mid_features, 1, stride=1, bias=False),\n",
    "            nn.BatchNorm2d(mid_features),\n",
    "            nn.ReLU(inplace=True)\n",
    "            )\n",
    "        \n",
    "        self.conv2_sk = SKConv(mid_features, M=M, G=G, r=r, stride=stride, L=L)\n",
    "        \n",
    "        self.conv3 = nn.Sequential(\n",
    "            nn.Conv2d(mid_features, out_features, 1, stride=1, bias=False),\n",
    "            nn.BatchNorm2d(out_features)\n",
    "            )\n",
    "        \n",
    "\n",
    "        if in_features == out_features: # when dim not change, input_features could be added diectly to out\n",
    "            self.shortcut = nn.Sequential()\n",
    "        else: # when dim not change, input_features should also change dim to be added to out\n",
    "            self.shortcut = nn.Sequential(\n",
    "                nn.Conv2d(in_features, out_features, 1, stride=stride, bias=False),\n",
    "                nn.BatchNorm2d(out_features)\n",
    "            )\n",
    "        \n",
    "        self.relu = nn.ReLU(inplace=True)\n",
    "    \n",
    "    def forward(self, x):\n",
    "        residual = x\n",
    "        \n",
    "        out = self.conv1(x)\n",
    "        out = self.conv2_sk(out)\n",
    "        out = self.conv3(out)\n",
    "        \n",
    "        return self.relu(out + self.shortcut(residual))\n",
    "\n",
    "class SKNet(nn.Module):\n",
    "    def __init__(self, class_num, nums_block_list = [3, 4, 6, 3], strides_list = [1, 2, 2, 2]):\n",
    "        super(SKNet, self).__init__()\n",
    "        self.basic_conv = nn.Sequential(\n",
    "            nn.Conv2d(3, 64, 7, 2, 3, bias=False),\n",
    "            nn.BatchNorm2d(64),\n",
    "            nn.ReLU(inplace=True),\n",
    "        )\n",
    "        \n",
    "        self.maxpool = nn.MaxPool2d(3,2,1)\n",
    "        \n",
    "        self.stage_1 = self._make_layer(64, 64, 64, nums_block=nums_block_list[0], stride=strides_list[0])\n",
    "        self.multi_scale_attention_1 = MultiScaleAttention(64)\n",
    "        self.ca_1 = ChannelAttention(64)\n",
    "        self.stage_2 = self._make_layer(64, 128, 128, nums_block=nums_block_list[1], stride=strides_list[1])\n",
    "        self.multi_scale_attention_2 = MultiScaleAttention(128)\n",
    "        self.ca_1 = ChannelAttention(128)\n",
    "        self.stage_3 = self._make_layer(128, 256, 256, nums_block=nums_block_list[2], stride=strides_list[2])\n",
    "        self.multi_scale_attention_3 = MultiScaleAttention(256)\n",
    "        self.ca_1 = ChannelAttention(256)\n",
    "        self.stage_4 = self._make_layer(256, 512, 512, nums_block=nums_block_list[3], stride=strides_list[3])\n",
    "        self.multi_scale_attention_4 = MultiScaleAttention(512)\n",
    "        self.gap = nn.AdaptiveAvgPool2d((1, 1))\n",
    "        self.classifier = nn.Linear(512, class_num)\n",
    "        \n",
    "    def _make_layer(self, in_feats, mid_feats, out_feats, nums_block, stride=1):\n",
    "        layers=[SKUnit(in_feats, mid_feats, out_feats, stride=stride)]\n",
    "        for _ in range(1,nums_block):\n",
    "            layers.append(SKUnit(out_feats, mid_feats, out_feats))\n",
    "        return nn.Sequential(*layers)\n",
    "\n",
    "    def forward(self, x):\n",
    "        fea = self.basic_conv(x)\n",
    "        fea = self.maxpool(fea)\n",
    "        fea = self.stage_1(fea)\n",
    "        fea = self.multi_scale_attention_1(fea)\n",
    "        fea = self.stage_2(fea)\n",
    "        fea = self.multi_scale_attention_2(fea)\n",
    "        fea = self.stage_3(fea)\n",
    "        fea = self.multi_scale_attention_3(fea)\n",
    "        fea = self.stage_4(fea)\n",
    "        fea = self.multi_scale_attention_4(fea)\n",
    "        fea = self.gap(fea)\n",
    "        fea = torch.squeeze(fea)\n",
    "        fea = self.classifier(fea)\n",
    "        return fea\n",
    "\n",
    "def SKNet26(nums_class=100):\n",
    "    return SKNet(nums_class, [2, 2, 2, 2])\n",
    "def SKNet50(nums_class=100):\n",
    "    return SKNet(nums_class, [3, 4, 6, 3])\n",
    "def SKNet101(nums_class=100):\n",
    "    return SKNet(nums_class, [3, 4, 23, 3])\n",
    "\n",
    "\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "id": "1060684c",
   "metadata": {
    "execution": {
     "iopub.execute_input": "2023-05-26T02:46:19.470637Z",
     "iopub.status.busy": "2023-05-26T02:46:19.469918Z",
     "iopub.status.idle": "2023-05-26T02:46:22.492514Z",
     "shell.execute_reply": "2023-05-26T02:46:22.491529Z"
    },
    "executionInfo": {
     "elapsed": 680,
     "status": "ok",
     "timestamp": 1684414637992,
     "user": {
      "displayName": "RUIYING CHEN",
      "userId": "09384040230747805046"
     },
     "user_tz": -480
    },
    "id": "otA9CIgdnXfW",
    "papermill": {
     "duration": 3.032489,
     "end_time": "2023-05-26T02:46:22.495104",
     "exception": false,
     "start_time": "2023-05-26T02:46:19.462615",
     "status": "completed"
    },
    "tags": []
   },
   "outputs": [],
   "source": [
    "\n",
    "net=SKNet26().to(device)\n",
    "#net=ResidualNet(\"CIFAR100\",50,100,None).to(device)\n",
    "#print(net)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "id": "177ab056",
   "metadata": {
    "execution": {
     "iopub.execute_input": "2023-05-26T02:46:22.510169Z",
     "iopub.status.busy": "2023-05-26T02:46:22.509877Z",
     "iopub.status.idle": "2023-05-26T02:46:22.519266Z",
     "shell.execute_reply": "2023-05-26T02:46:22.518268Z"
    },
    "executionInfo": {
     "elapsed": 8,
     "status": "ok",
     "timestamp": 1684414638807,
     "user": {
      "displayName": "RUIYING CHEN",
      "userId": "09384040230747805046"
     },
     "user_tz": -480
    },
    "id": "35VI01P_kqal",
    "outputId": "64747940-f10a-4982-df2f-d5bc5a500b78",
    "papermill": {
     "duration": 0.019356,
     "end_time": "2023-05-26T02:46:22.521443",
     "exception": false,
     "start_time": "2023-05-26T02:46:22.502087",
     "status": "completed"
    },
    "tags": []
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "5000\n"
     ]
    }
   ],
   "source": [
    "import torch.optim as optim\n",
    "\n",
    "criterion = nn.CrossEntropyLoss()\n",
    "optimizer = torch.optim.Adam(net.parameters(), lr=0.0005)\n",
    "print(len(train_loader))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "e4174737",
   "metadata": {
    "executionInfo": {
     "elapsed": 7,
     "status": "ok",
     "timestamp": 1684414638807,
     "user": {
      "displayName": "RUIYING CHEN",
      "userId": "09384040230747805046"
     },
     "user_tz": -480
    },
    "id": "ck0do7nrmNTQ",
    "papermill": {
     "duration": 0.006387,
     "end_time": "2023-05-26T02:46:22.534367",
     "exception": false,
     "start_time": "2023-05-26T02:46:22.527980",
     "status": "completed"
    },
    "tags": []
   },
   "outputs": [],
   "source": []
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "id": "145f8b86",
   "metadata": {
    "execution": {
     "iopub.execute_input": "2023-05-26T02:46:22.549741Z",
     "iopub.status.busy": "2023-05-26T02:46:22.548915Z",
     "iopub.status.idle": "2023-05-26T02:46:22.561445Z",
     "shell.execute_reply": "2023-05-26T02:46:22.560641Z"
    },
    "executionInfo": {
     "elapsed": 7,
     "status": "ok",
     "timestamp": 1684414638808,
     "user": {
      "displayName": "RUIYING CHEN",
      "userId": "09384040230747805046"
     },
     "user_tz": -480
    },
    "id": "xKlx2mCxlE02",
    "papermill": {
     "duration": 0.022308,
     "end_time": "2023-05-26T02:46:22.563373",
     "exception": false,
     "start_time": "2023-05-26T02:46:22.541065",
     "status": "completed"
    },
    "tags": []
   },
   "outputs": [],
   "source": [
    "from tqdm import tqdm\n",
    "def train(epoch):\n",
    "    net.train()\n",
    "    # Loop over each batch from the training set\n",
    "    train_tqdm = tqdm(train_loader, desc=\"Epoch \" + str(epoch))\n",
    "    for batch_idx, (data, target) in enumerate(train_tqdm):\n",
    "        # Copy data to GPU if needed\n",
    "        data = data.to(device)\n",
    "        target = target.to(device)\n",
    "        # Zero gradient buffers\n",
    "        optimizer.zero_grad()\n",
    "        # Pass data through the network\n",
    "        output = net(data)\n",
    "        # Calculate loss\n",
    "        loss = criterion(output, target)\n",
    "        # Backpropagate\n",
    "        loss.backward()\n",
    "        # Update weights\n",
    "        optimizer.step()  # w - alpha * dL / dw\n",
    "        train_tqdm.set_postfix({\"loss\": \"%.3g\" % loss.item()})\n",
    "\n",
    "def validate(lossv,top1AccuracyList,top5AccuracyList):\n",
    "    net.eval()\n",
    "    val_loss = 0\n",
    "    top1Correct = 0\n",
    "    top5Correct = 0\n",
    "    for index,(data, target) in enumerate(test_loader):\n",
    "        data = data.to(device)\n",
    "        labels = target.to(device)\n",
    "        outputs = net(data)\n",
    "        val_loss += criterion(outputs, labels).data.item()\n",
    "        _, top1Predicted = torch.max(outputs.data, 1)\n",
    "        top5Predicted = torch.topk(outputs.data, k=5, dim=1, largest=True)[1]\n",
    "        top1Correct += (top1Predicted == labels).cpu().sum().item()\n",
    "        label_resize = labels.view(-1, 1).expand_as(top5Predicted)\n",
    "        top5Correct += torch.eq(top5Predicted, label_resize).view(-1).cpu().sum().float().item()\n",
    "\n",
    "    val_loss /= len(test_loader)\n",
    "    lossv.append(val_loss)\n",
    "\n",
    "    top1Acc=100*top1Correct / len(test_loader.dataset)\n",
    "    top5Acc=100*top5Correct / len(test_loader.dataset)\n",
    "    top1AccuracyList.append(top1Acc)\n",
    "    top5AccuracyList.append(top5Acc)\n",
    "    \n",
    "    print('\\nValidation set: Average loss: {:.4f}, Top1Accuracy: {}/{} ({:.0f}%) Top5Accuracy: {}/{} ({:.0f}%)\\n'.format(\n",
    "        val_loss, top1Correct, len(test_loader.dataset), top1Acc,top5Correct, len(test_loader.dataset), top5Acc))\n",
    "#     accuracy = 100. * correct.to(torch.float32) / len(testloader.dataset)\n",
    "#     accv.append(accuracy)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 10,
   "id": "9062978f",
   "metadata": {
    "execution": {
     "iopub.execute_input": "2023-05-26T02:46:22.578083Z",
     "iopub.status.busy": "2023-05-26T02:46:22.577283Z",
     "iopub.status.idle": "2023-05-26T04:28:47.692081Z",
     "shell.execute_reply": "2023-05-26T04:28:47.690912Z"
    },
    "id": "pTWz8B3Dl9gu",
    "outputId": "b7c77e1e-40cc-417b-f5de-7467800712dd",
    "papermill": {
     "duration": 6145.124423,
     "end_time": "2023-05-26T04:28:47.694320",
     "exception": false,
     "start_time": "2023-05-26T02:46:22.569897",
     "status": "completed"
    },
    "tags": []
   },
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "Epoch 0: 100%|██████████| 5000/5000 [04:49<00:00, 17.25it/s, loss=4.31]\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "\n",
      "Validation set: Average loss: 3.7485, Top1Accuracy: 1305/10000 (13%) Top5Accuracy: 3675.0/10000 (37%)\n",
      "\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "Epoch 1: 100%|██████████| 5000/5000 [04:32<00:00, 18.37it/s, loss=3.77]\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "\n",
      "Validation set: Average loss: 3.2892, Top1Accuracy: 2014/10000 (20%) Top5Accuracy: 4854.0/10000 (49%)\n",
      "\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "Epoch 2: 100%|██████████| 5000/5000 [04:32<00:00, 18.35it/s, loss=2.88]\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "\n",
      "Validation set: Average loss: 3.0189, Top1Accuracy: 2551/10000 (26%) Top5Accuracy: 5518.0/10000 (55%)\n",
      "\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "Epoch 3: 100%|██████████| 5000/5000 [04:35<00:00, 18.15it/s, loss=3.22]\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "\n",
      "Validation set: Average loss: 2.8853, Top1Accuracy: 2854/10000 (29%) Top5Accuracy: 5787.0/10000 (58%)\n",
      "\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "Epoch 4: 100%|██████████| 5000/5000 [04:39<00:00, 17.90it/s, loss=3.33]\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "\n",
      "Validation set: Average loss: 2.7254, Top1Accuracy: 3088/10000 (31%) Top5Accuracy: 6195.0/10000 (62%)\n",
      "\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "Epoch 5: 100%|██████████| 5000/5000 [04:44<00:00, 17.60it/s, loss=2.42]\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "\n",
      "Validation set: Average loss: 2.5787, Top1Accuracy: 3398/10000 (34%) Top5Accuracy: 6558.0/10000 (66%)\n",
      "\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "Epoch 6: 100%|██████████| 5000/5000 [04:39<00:00, 17.91it/s, loss=2.72]\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "\n",
      "Validation set: Average loss: 2.4771, Top1Accuracy: 3663/10000 (37%) Top5Accuracy: 6772.0/10000 (68%)\n",
      "\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "Epoch 7: 100%|██████████| 5000/5000 [04:42<00:00, 17.70it/s, loss=2.09]\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "\n",
      "Validation set: Average loss: 2.4008, Top1Accuracy: 3777/10000 (38%) Top5Accuracy: 6894.0/10000 (69%)\n",
      "\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "Epoch 8: 100%|██████████| 5000/5000 [04:36<00:00, 18.11it/s, loss=1.5]\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "\n",
      "Validation set: Average loss: 2.3941, Top1Accuracy: 3873/10000 (39%) Top5Accuracy: 6940.0/10000 (69%)\n",
      "\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "Epoch 9: 100%|██████████| 5000/5000 [04:42<00:00, 17.68it/s, loss=1.94]\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "\n",
      "Validation set: Average loss: 2.3603, Top1Accuracy: 3970/10000 (40%) Top5Accuracy: 7019.0/10000 (70%)\n",
      "\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "Epoch 10: 100%|██████████| 5000/5000 [04:41<00:00, 17.77it/s, loss=1.36]\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "\n",
      "Validation set: Average loss: 2.3435, Top1Accuracy: 4049/10000 (40%) Top5Accuracy: 7053.0/10000 (71%)\n",
      "\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "Epoch 11: 100%|██████████| 5000/5000 [04:47<00:00, 17.41it/s, loss=2.24]\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "\n",
      "Validation set: Average loss: 2.3316, Top1Accuracy: 4149/10000 (41%) Top5Accuracy: 7137.0/10000 (71%)\n",
      "\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "Epoch 12: 100%|██████████| 5000/5000 [04:50<00:00, 17.22it/s, loss=3.43]\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "\n",
      "Validation set: Average loss: 2.3688, Top1Accuracy: 4100/10000 (41%) Top5Accuracy: 7097.0/10000 (71%)\n",
      "\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "Epoch 13: 100%|██████████| 5000/5000 [04:46<00:00, 17.44it/s, loss=1.24]\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "\n",
      "Validation set: Average loss: 2.4078, Top1Accuracy: 4098/10000 (41%) Top5Accuracy: 7070.0/10000 (71%)\n",
      "\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "Epoch 14: 100%|██████████| 5000/5000 [04:42<00:00, 17.73it/s, loss=1.06]\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "\n",
      "Validation set: Average loss: 2.4087, Top1Accuracy: 4168/10000 (42%) Top5Accuracy: 7157.0/10000 (72%)\n",
      "\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "Epoch 15: 100%|██████████| 5000/5000 [04:42<00:00, 17.71it/s, loss=1.37]\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "\n",
      "Validation set: Average loss: 2.4222, Top1Accuracy: 4183/10000 (42%) Top5Accuracy: 7214.0/10000 (72%)\n",
      "\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "Epoch 16: 100%|██████████| 5000/5000 [04:39<00:00, 17.89it/s, loss=1.89]\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "\n",
      "Validation set: Average loss: 2.5047, Top1Accuracy: 4204/10000 (42%) Top5Accuracy: 7133.0/10000 (71%)\n",
      "\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "Epoch 17: 100%|██████████| 5000/5000 [04:43<00:00, 17.61it/s, loss=0.766]\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "\n",
      "Validation set: Average loss: 2.5585, Top1Accuracy: 4170/10000 (42%) Top5Accuracy: 7123.0/10000 (71%)\n",
      "\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "Epoch 18: 100%|██████████| 5000/5000 [04:39<00:00, 17.87it/s, loss=0.93]\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "\n",
      "Validation set: Average loss: 2.6504, Top1Accuracy: 4160/10000 (42%) Top5Accuracy: 7100.0/10000 (71%)\n",
      "\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "Epoch 19: 100%|██████████| 5000/5000 [04:40<00:00, 17.85it/s, loss=0.973]\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "\n",
      "Validation set: Average loss: 2.6910, Top1Accuracy: 4183/10000 (42%) Top5Accuracy: 7029.0/10000 (70%)\n",
      "\n",
      "Finished Training\n"
     ]
    }
   ],
   "source": [
    "lossv = []\n",
    "top1AccuracyList = []   # top1准确率列表\n",
    "top5AccuracyList = []   # top5准确率列表\n",
    "max_epoch = 20\n",
    "for epoch in range(max_epoch):  # loop over the dataset multiple times\n",
    "    train(epoch)\n",
    "    with torch.no_grad():\n",
    "        validate(lossv,top1AccuracyList,top5AccuracyList)\n",
    "        \n",
    "print('Finished Training')"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 11,
   "id": "e3925a00",
   "metadata": {
    "execution": {
     "iopub.execute_input": "2023-05-26T04:29:11.505150Z",
     "iopub.status.busy": "2023-05-26T04:29:11.504763Z",
     "iopub.status.idle": "2023-05-26T04:29:11.509548Z",
     "shell.execute_reply": "2023-05-26T04:29:11.508520Z"
    },
    "executionInfo": {
     "elapsed": 22810,
     "status": "ok",
     "timestamp": 1684424352765,
     "user": {
      "displayName": "RUIYING CHEN",
      "userId": "09384040230747805046"
     },
     "user_tz": -480
    },
    "id": "Hag0zV9cmHm_",
    "outputId": "1434ac5c-f76c-4637-9223-e6955c942441",
    "papermill": {
     "duration": 11.68761,
     "end_time": "2023-05-26T04:29:11.512223",
     "exception": false,
     "start_time": "2023-05-26T04:28:59.824613",
     "status": "completed"
    },
    "tags": []
   },
   "outputs": [],
   "source": [
    "# from google.colab import drive\n",
    "# drive.mount('/content/drive')"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 12,
   "id": "22c8d3c7",
   "metadata": {
    "execution": {
     "iopub.execute_input": "2023-05-26T04:29:34.865091Z",
     "iopub.status.busy": "2023-05-26T04:29:34.864739Z",
     "iopub.status.idle": "2023-05-26T04:29:35.730548Z",
     "shell.execute_reply": "2023-05-26T04:29:35.728508Z"
    },
    "id": "Z1-D3LkhvzDq",
    "papermill": {
     "duration": 12.700533,
     "end_time": "2023-05-26T04:29:35.732646",
     "exception": false,
     "start_time": "2023-05-26T04:29:23.032113",
     "status": "completed"
    },
    "tags": []
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "Text(0.5, 1.0, 'validation top5 accuracy')"
      ]
     },
     "execution_count": 12,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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tWtFcnKyiIqKEr169RLPPvusXp3x0tLSdJ1zOXHixIlT657S0tIemRuN7sTt5OSEjz/+GHPmzKn23po1axAWFobr16/r5q1btw6rV69GWlpavbehUqng6OiItLS0akMbERFR65Cfnw9vb2/k5eVBqVTW2bbBY0uWl5dj586dKCoqQmBgYI1tBg8ejGXLluGnn35CcHAwsrKy8MMPP2DcuHF1rlutVld5XH3l6OkKhYLhRkTUytXn8pTeN5TExcXB3t4eMpkMc+fOxZ49e9CzZ88a2w4ePBhbt27F5MmTYW1tDXd3dzg6OmLdunV1biM0NBRKpVI3eXt761smERG1YnqfliwtLUVqairy8vKwa9cufP3114iMjKwx4OLj4/HUU0/hzTffxNNPP4309HT85S9/wYABA7Bhw4Zat/HwkVvloahKpeKRGxFRK5Wfnw+lUlmvLGj0NbennnoKnTt3xvr166u9N2PGDJSUlGDnzp26edHR0Rg6dCju3LlT41OEa6LPByIiIvOkTxY0up+bEKLKUdaDiouLq92uaWlpqVuOiIioOeh1Q8nSpUsRHBwMb29vFBQUYPv27YiIiEB4eDgAYMmSJbh9+7buibwTJkzAq6++irCwMN1pyT//+c94/PHH4enp2fSfhoiICHqGW2ZmJmbMmIH09HQolUr4+/sjPDwco0aNAgCkp6cjNTVV137WrFkoKCjA559/jrfeeguOjo4YOXKk7lHzREREzcEkHlbaFNfc8kvKcPL6XfT0UMDbybaJKyQiouZm0GtupmLRjgt47b+/Yn9curFLISKiZtZqwm1oVxcAQFRStpErISKi5tZqwm3I/XA7c+M33CstN3I1RETUnFpNuHVysUM7RxuUlmtx6sZdY5dDRETNqNWEm0Qi0Z2ajE7KMXI1RETUnFpNuAHA0K6uAIAohhsRkVlrVeE2uLMzJBIgMbMAmfklxi6HiIiaSasKtzZ21vBvV/EMIJ6aJCIyX60q3IAHT02ySwARkblqdeFW2SUg+loOtNoWPzgLERE1QKsLt37t28DW2hI5haVIyMg3djlERNQMWl24WUstENjJGQCvuxERmatWF27Ag0NxMdyIiMxRqwy3IfdvKjmdksuhuIiIzFCrDLfOrnbwVMpRqtHidEquscshIqIm1irDrWIoroqjt2h2CSAiMjutMtyA37sE8Lob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",
      "text/plain": [
       "<Figure size 500x300 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "image/png": "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",
      "text/plain": [
       "<Figure size 500x300 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "image/png": "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MkpKSrB3717duMjISEilUsyePVs3rrCwEMuWLUPXrl1hZWUFKysrODg4oKioqMbpuIacOHECADBnzhy98TNmzICVVc0TBZ988gkGDRoEmUwGKysrWFtb4/vvvzd4u9ViY2NRUlJSowGGj48PRo0aVeOUnUQiwaRJk/TG9evXr1GnVety/Phx9OrVC4899pje+Llz50IIgePHj+uNnzp1KmQyme61XC7HpEmTcPLkSVRWVgIABg4ciI0bN+I3v/kNHn/8cbz00kuIiYmBSqXC0qVLG6ypsZ/xoUOHMHLkSPTs2bPOdR06dAjdunXDmDFjGrU/GmvatGk1xmVlZeF3v/sdfHx8dL8ffn5+AKCru7i4GNHR0ZgxY0a9R+phYWHo378/PvroI924Tz75BBKJBL/97W9b9L1Qy2CQEXr37o0hQ4YgMjISAFBZWYldu3Zh8uTJcHFx0c03e/ZsbNq0Ca+++iqOHDmC06dPIy4uDu7u7igpKTFomzk5OQAApVKpN97Kygqurq564zZs2IA33ngDQ4cOxddff41Tp04hLi4O48ePN3i7j26/tlaMXl5euunV7Ozs9EIEqDpFWFpa2qTtV9dQ1/YfrrHao/uqelxZWRkKCwvr3I6TkxOefvppXLx4scH91djP+N69ew023mnMPIays7ODo6Oj3jitVotx48Zh3759WLp0Kb7//nucPn1ad7tBdd25ubmorKxsVE1vvvkmvv/+eyQkJKC8vBxbt27Fs88+W+tnQMbHa2QEAHjppZcwb948XL16FUlJScjIyMBLL72km56fn49vv/0Wq1atwvLly3XjNRqN7hqWIarDKjMzE506ddKNr6ioqPEFvmvXLoSFhWHz5s164x+9ltaU7WdkZNSYdufOHYOv9zW1hrq2D6BGDZmZmTXmzczMhI2NDRwcHOrdlnjwIPj67uUz5DN2d3dHenp6vdtszDzVfxw82mimtkYaddV/6dIl/PLLL9i+fTvCw8N142/cuKE3n4uLCywtLRusCagK9GXLluGjjz5CcHAwMjMzMX/+/AaXI+PgERkBAGbNmgWZTIbt27dj+/bt6NSpE8aNG6ebLpFIIITQNVSo9tlnn+lOaxmi+j6v3bt3643/8ssvdRfwH972o9u9ePEiYmNj9cZVz9OYo7SQkBDY2tpi165deuPT09Nx/PjxGg1fmkMqldZa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",
      "text/plain": [
       "<Figure size 500x300 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "import matplotlib.pyplot as plt\n",
    "import numpy as np\n",
    "# 绘制曲线\n",
    "plt.figure(figsize=(5, 3))\n",
    "plt.plot(np.arange(1, max_epoch + 1), lossv)\n",
    "plt.title('validation loss')\n",
    "\n",
    "plt.figure(figsize=(5,3))\n",
    "plt.plot(np.arange(1, max_epoch + 1), top1AccuracyList)\n",
    "plt.title('validation top1 accuracy')\n",
    "\n",
    "plt.figure(figsize=(5,3))\n",
    "plt.plot(np.arange(1, max_epoch + 1), top5AccuracyList)\n",
    "plt.title('validation top5 accuracy')"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "1499485d",
   "metadata": {
    "id": "fyWGvlbHup5w",
    "papermill": {
     "duration": 12.095984,
     "end_time": "2023-05-26T04:29:59.415803",
     "exception": false,
     "start_time": "2023-05-26T04:29:47.319819",
     "status": "completed"
    },
    "tags": []
   },
   "outputs": [],
   "source": []
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.10.10"
  },
  "papermill": {
   "default_parameters": {},
   "duration": 6252.05383,
   "end_time": "2023-05-26T04:30:13.830069",
   "environment_variables": {},
   "exception": null,
   "input_path": "__notebook__.ipynb",
   "output_path": "__notebook__.ipynb",
   "parameters": {},
   "start_time": "2023-05-26T02:46:01.776239",
   "version": "2.4.0"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 5
}
